/*------------------------------------------------
<> FRAME_BUFFER class
<> 2008.07.31 - Robert Vanca
<> v0.1

Frame buffer interface!

--------------------------------------------------*/
#pragma once
#ifndef _BASELIB_FRAMEBUFFER_H
#define _BASELIB_FRAMEBUFFER_H

//ABSTRACT INTERFACE
class FRAME_BUFFER
{
public:
	~FRAME_BUFFER(){}
	virtual void Draw() = 0;
	virtual void Clear() = 0;
	virtual void PutPixel(COLOR,int,int) = 0;
	virtual void PutPixelAlpha(COLOR,int,int,float) = 0;
	virtual void BlitMem(int,int,int,int,void*) = 0;
	virtual COLOR GetPixel(int,int) = 0;
	virtual int GetWidth() = 0;
	virtual int GetHeight() = 0;
};

#endif //_BASELIB_FRAMEBUFFER_H